Field of the Invention
The present invention relates to operation and teaching of a robot.
Discussion of the Background
There are three basic methods for programming industrial robots: pendant based teaching, offline teaching, and lead-through teaching.
Pendant based teaching method involves moving of a physical robot through an operator interface (or teaching pendant) that allows the operator to command motion of each axes of the robot. Various choices are available for axes of motion based on a coordinate frame selected by the operator. For example, axis (joint) coordinates allow the motion of each joint axes of the robot in its respective positive and negative direction, robot coordinates use a robot that is installed with a coordinate frame at an origin of the robot aligned with a given world frame, and tool coordinates represent a coordinate frame that is attached to a robot tool plate that is a mechanical part of the robot on which an end-effector (such as a gripper) is installed. However, each of these coordinate frames may not be intuitive or obvious to a user who is teaching the robot.
Offline teaching is another technique which uses a virtual robot (comprised of a 3D model of the robot and potentially other items in a robot workcell) instead of a physical robot. Some of these virtual environments have integrated computer-aided design capabilities and allow the user to point and click on a position of interest, thereby causing the simulated robot to move to that point. This feature reduces the manual effort required to jog (drive) the robot to the intended position in three dimensional space.
Lead-through teaching is another method of robot programming that involves teaching the robot application logic and specific positions by moving the robot by grasping its end-effector and moving it through the task it is supposed to accomplish. This technique can be used to teach the path the robot has to follow along with specific positions and some application logic. To get the direction input from the user, force/torque sensors are usually used. An advantage of this approach is that an operator can not only teach the path, the positions, but can also teach resistive force that the robot needs to apply to the environment when contact is made. The challenge is that the force/torque sensors used in this approach are relatively expensive, which makes the robot system with lead through teaching less attractive in terms of cost.
While lead-through teaching can be intuitive to a user, current lead-through teaching device and methods are relatively expensive and limited in their ability to be incorporated into a robot system. Accordingly, a method and device is needed that can overcome the disadvantages and limitations of other such devices.
During operation, a robot may collide with an obstacle. To prevent damage to the robot, the end-effector, and the obstacle, the collision needs to be detected to have the robot stopped. Various devices and methods are available for collision detection, such as a dedicated collision detection device, a joint torque-based collision detection device that detects collision by measuring torque exerted on each joint, and a motor torque based collision detection. However, these methods have various disadvantages, such as limited accuracy and additional expense related to the various sensors used. Accordingly, a method and device is needed that can overcome the disadvantages and limitations of other such devices.
Additionally, when vibration occurs during a robot's operation, the speed and/or the acceleration of the motion needs to reduced, in turn, causing higher cycle time. Since the vibration of a robot cannot be fully estimated in advance, a robot controller may assume a worst case scenario and reduce overall cycle time performance to avoid potential vibration. Accordingly, there is a need for a cost effective manner to allow a robot to achieve better cycle time performance.